package etm.negocio;

import java.sql.Date;
import java.util.Collection;

import upc.condominio.modelo.Queja;
import upc.condominio.modelo.Residente;
import etm.dao.QuejaDAO;
import etm.dao.ResidenteDAO;
import etm.excepcion.DAOExcepcion;

public class GestionResidente {
	public Collection<Residente> listar() throws DAOExcepcion {
		ResidenteDAO dao = new ResidenteDAO();
		return dao.listar();
	}
	
	public Residente buscarPorId(int intIdResidente) throws DAOExcepcion {
		ResidenteDAO dao = new ResidenteDAO();
		return dao.buscarporId(intIdResidente);
	}
	
	public Collection<Residente> buscarPorDato(String strDato) throws DAOExcepcion {
		ResidenteDAO dao = new ResidenteDAO();
		return dao.buscarPorDato(strDato);
	}
	
	public void insertar(String strDocumento, String strApPaterno, String strApMaterno,
			String strNombres, Date datFecNac, String strCorreo, String strClave)
			throws DAOExcepcion {
		GestionResidente grResidente = new GestionResidente();
		ResidenteDAO dao = new ResidenteDAO();

		Residente res = new Residente();
		res.setDni(strDocumento);
		res.setApePaterno(strApPaterno);
		res.setApeMaterno(strApMaterno);
		res.setNombres(strNombres);
		res.setFechaNac(datFecNac);
		res.setEmail(strCorreo);
		res.setClave(strClave);
		dao.insertar(res);

	}
	
	public void eliminar(int intIdResidente) throws DAOExcepcion {
		ResidenteDAO dao = new ResidenteDAO();

		dao.eliminar(intIdResidente);
	}
	
	public void actualizar(int intIdResidente, String strDocumento, String strApPaterno, String strApMaterno,
			String strNombres, Date datFecNac, String strCorreo, String strClave)
			throws DAOExcepcion {
		ResidenteDAO dao = new ResidenteDAO();
		
		Residente vo = new Residente();
		vo.setIdResidente(intIdResidente);
		vo.setApePaterno(strApPaterno);
		vo.setApeMaterno(strApMaterno);
		vo.setDni(strDocumento);
		vo.setNombres(strNombres);
		vo.setFechaNac(datFecNac);
		vo.setEmail(strCorreo);
		vo.setClave(strClave);
		dao.actualizar(vo);

	}
	
	public Residente buscarPorCorreo(String correo) throws DAOExcepcion {
		ResidenteDAO dao = new ResidenteDAO();
		return dao.buscarPorCorreo(correo);
	}
}
